package com.tianqu.tms.www.bid.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import com.tianqu.tms.core.base.Logger;
import com.tianqu.tms.core.base.TmsAction;
import com.tianqu.tms.core.base.UserContext;
import com.tianqu.tms.core.util.TmsConstants;
import com.tianqu.tms.www.bid.controller.BidCarQuotationWaitListController;
import com.tianqu.tms.www.bid.viewhelper.BidCarQuotationViewHelper;

/**
 * 车辆寻价(今日)-车辆一览-等待寻价一览
 * @author mufeiyu
 *
 */
public class BidCarQuotationWaitListAction extends TmsAction {
	
	private Logger logger = Logger.getLogger(BidCarQuotationWaitListAction.class);
	private static String BIDSTATUS = "bidStatus";
	private static String BIDSTATUSCHANGED = "bidStatusChanged";
	private static String INPUT = "input";
	private static String ONE = "1";
	private static String WaitNum = "bidCarQuotationWaitNum";
	
	@Override
	protected ActionForward doAction(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response,
			UserContext uc) throws Exception {
		
		logger.debug(this.getClass().getName() + "#execute was called.");
		
		BidCarQuotationWaitListController controller = new BidCarQuotationWaitListController();
		String bidstatus = request.getParameter(BIDSTATUS);
		String bidStatusChanged = request.getParameter(BIDSTATUSCHANGED);
		
		if (null != bidStatusChanged && "2".equals(bidStatusChanged)) {
			setErrorsToRequest(request, TmsConstants.U7007, null); // 当前车辆的寻价已经开始
		} else if (null != bidStatusChanged && !"1".equals(bidStatusChanged)){
			setErrorsToRequest(request, TmsConstants.U7008, null); // 当前车辆的寻价已经结束
		}
		
		if (bidstatus != null && bidstatus.equals(ONE)) {
			
			uc.setAttribute(BIDSTATUS, bidstatus);
			controller.execute(uc);
			
			BidCarQuotationViewHelper bidCarQuotationViewHelper = (BidCarQuotationViewHelper)uc.getAttribute(TmsConstants.VIEWHELP);
			request.setAttribute(TmsConstants.VIEWHELP,bidCarQuotationViewHelper);
			
			logger.debug(this.getClass().getName() + "#execute was completed.");
			
			if (bidCarQuotationViewHelper.getBidCarQuotationWaitNum() == 0) {
				return mapping.findForward(INPUT);
			} else {
				return mapping.findForward(TmsConstants.SUCCESS);				
			}
		} else {
			return mapping.findForward(INPUT);
		}
	}
}
